{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Coral Triangle case study\n",
    "\n",
    "- BLM calibration (There is no grid)\n",
    "- Solutions clustering\n",
    "- Gap Analysis\n",
    "- Unmet targtes pipeline\n",
    "- FPF calibration (Targets met)\n",
    "- Difference Map (There is no grid)\n",
    "\n",
    "Date: 20 April 2021  \n",
    "Author: tamara.huete@vizzuality.com"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1. Requirements"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "%run marxan_utils.ipynb"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2. MARXAN folder"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "MARXAN_FOLDER = '/home/jovyan/work/datasets/raw/demo_Coral_Triangle/marxan_Coral_Triangle_Case_Study'\n",
    "MARXAN_INPUTDATA = 'input.dat'"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3. BLM calibration (no grid file, can't calculate area to apply rule of thumb)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "grid_file_path = f'{MARXAN_FOLDER}/pulayer/pu_base.shp'\n",
    "BLM_calibration(MARXAN_FOLDER,'input.dat',grid_file_path )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Execute marxan"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "#execute marxan\n",
    "userInputFile = readInput(MARXAN_FOLDER, MARXAN_INPUTDATA)\n",
    "userInputFile.VERBOSITY = 3\n",
    "saveInput(MARXAN_FOLDER, MARXAN_INPUTDATA,userInputFile)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Marxan v 4.0.5\n",
      "\n",
      "Spatial Prioritization via Annealing\n",
      "\n",
      "Coded by Ian Ball, modified by Matthew Watts\n",
      "Written by Ian Ball and Hugh Possingham\n",
      "\n",
      "Marxan website\n",
      "\n",
      "https://marxansolutions.org/\n",
      "\n",
      "Running multithreaded over number of threads: 4\n",
      "\n",
      "Best run: 73 Best score: 3.84283e+07\n"
     ]
    }
   ],
   "source": [
    "execute_marxan(MARXAN_FOLDER)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### SCENARIO OUTPUTS"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3) Solutions clustering"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Overall best solution is 73\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "[45, 59, 73, 77, 63]"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "bestsols= clusterSolutions(MARXAN_FOLDER,'input.dat',k=5)\n",
    "bestsols"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Summary info 5 most different solutions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Run_Number</th>\n",
       "      <th>Score</th>\n",
       "      <th>Cost</th>\n",
       "      <th>Planning_Units</th>\n",
       "      <th>Connectivity</th>\n",
       "      <th>Connectivity_Total</th>\n",
       "      <th>Connectivity_In</th>\n",
       "      <th>Connectivity_Edge</th>\n",
       "      <th>Connectivity_Out</th>\n",
       "      <th>Connectivity_In_Fraction</th>\n",
       "      <th>Penalty</th>\n",
       "      <th>Shortfall</th>\n",
       "      <th>Missing_Values</th>\n",
       "      <th>MPM</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>44</th>\n",
       "      <td>45</td>\n",
       "      <td>39933000.0</td>\n",
       "      <td>39932800.0</td>\n",
       "      <td>3232</td>\n",
       "      <td>55100000.0</td>\n",
       "      <td>237740000.0</td>\n",
       "      <td>13870000.0</td>\n",
       "      <td>55100000.0</td>\n",
       "      <td>168770000.0</td>\n",
       "      <td>0.058341</td>\n",
       "      <td>129.039</td>\n",
       "      <td>9469.26</td>\n",
       "      <td>1</td>\n",
       "      <td>0.999994</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>58</th>\n",
       "      <td>59</td>\n",
       "      <td>38899000.0</td>\n",
       "      <td>38898800.0</td>\n",
       "      <td>3247</td>\n",
       "      <td>55890000.0</td>\n",
       "      <td>237740000.0</td>\n",
       "      <td>13630000.0</td>\n",
       "      <td>55890000.0</td>\n",
       "      <td>168220000.0</td>\n",
       "      <td>0.057332</td>\n",
       "      <td>220.647</td>\n",
       "      <td>10930.40</td>\n",
       "      <td>5</td>\n",
       "      <td>0.999995</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>62</th>\n",
       "      <td>63</td>\n",
       "      <td>39254200.0</td>\n",
       "      <td>39254000.0</td>\n",
       "      <td>3293</td>\n",
       "      <td>55960000.0</td>\n",
       "      <td>237740000.0</td>\n",
       "      <td>14140000.0</td>\n",
       "      <td>55960000.0</td>\n",
       "      <td>167640000.0</td>\n",
       "      <td>0.059477</td>\n",
       "      <td>181.734</td>\n",
       "      <td>7684.01</td>\n",
       "      <td>4</td>\n",
       "      <td>0.999992</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>72</th>\n",
       "      <td>73</td>\n",
       "      <td>38428300.0</td>\n",
       "      <td>38428000.0</td>\n",
       "      <td>3364</td>\n",
       "      <td>56420000.0</td>\n",
       "      <td>237740000.0</td>\n",
       "      <td>14900000.0</td>\n",
       "      <td>56420000.0</td>\n",
       "      <td>166420000.0</td>\n",
       "      <td>0.062673</td>\n",
       "      <td>320.607</td>\n",
       "      <td>32756.50</td>\n",
       "      <td>6</td>\n",
       "      <td>0.999994</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>76</th>\n",
       "      <td>77</td>\n",
       "      <td>40334900.0</td>\n",
       "      <td>40334600.0</td>\n",
       "      <td>3251</td>\n",
       "      <td>56410000.0</td>\n",
       "      <td>237740000.0</td>\n",
       "      <td>13080000.0</td>\n",
       "      <td>56410000.0</td>\n",
       "      <td>168250000.0</td>\n",
       "      <td>0.055018</td>\n",
       "      <td>210.248</td>\n",
       "      <td>9794.29</td>\n",
       "      <td>4</td>\n",
       "      <td>0.999995</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    Run_Number       Score        Cost  Planning_Units  Connectivity  \\\n",
       "44          45  39933000.0  39932800.0            3232    55100000.0   \n",
       "58          59  38899000.0  38898800.0            3247    55890000.0   \n",
       "62          63  39254200.0  39254000.0            3293    55960000.0   \n",
       "72          73  38428300.0  38428000.0            3364    56420000.0   \n",
       "76          77  40334900.0  40334600.0            3251    56410000.0   \n",
       "\n",
       "    Connectivity_Total  Connectivity_In  Connectivity_Edge  Connectivity_Out  \\\n",
       "44         237740000.0       13870000.0         55100000.0       168770000.0   \n",
       "58         237740000.0       13630000.0         55890000.0       168220000.0   \n",
       "62         237740000.0       14140000.0         55960000.0       167640000.0   \n",
       "72         237740000.0       14900000.0         56420000.0       166420000.0   \n",
       "76         237740000.0       13080000.0         56410000.0       168250000.0   \n",
       "\n",
       "    Connectivity_In_Fraction  Penalty  Shortfall  Missing_Values       MPM  \n",
       "44                  0.058341  129.039    9469.26               1  0.999994  \n",
       "58                  0.057332  220.647   10930.40               5  0.999995  \n",
       "62                  0.059477  181.734    7684.01               4  0.999992  \n",
       "72                  0.062673  320.607   32756.50               6  0.999994  \n",
       "76                  0.055018  210.248    9794.29               4  0.999995  "
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "summary = validateFile(MARXAN_FOLDER,'input.dat',OutputSum)\n",
    "sum_diff =summary[summary['Run_Number'].isin(bestsols)]\n",
    "sum_diff"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4) Gap Analysis"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = gapAnalysis(MARXAN_FOLDER, 'input.dat')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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YYcdxvXXX8/111/PCSecwDHHHMMJJ5zAHXfcAcAFF1zAK1/5Sv7iL/6CpUuX8s53vpO/+7u/A+DHP/4xz3/+8+nt7eX73/8+z372sznmmGM4+eST2bhxIwDt7e20tbVx0kkn8ZSnPIXPfe5zhV67pD2Tv4oX4NJLL2XdunXceOONPPDAAxx77LE8//nPZ926dXznO9/huuuuY8aMGWzevHn3Pj09PbzmNa/hiCOO4Nxzz2XVqlXss88+/OIXv6C7u5sTTzyRpUuXcsMNN3DHHXdw8803s3HjRp75zGfS1tYGwA033MDChQt394O76aabuPbaa9m6dSvHHHMMp512GgDXX389t9xyC4ceeiif/vSnAbj55pu5/fbbWbp0KXfeeSd/93d/R2dnJ1/4whcA+OAHP8iSJUvo6OjgwQcf5LjjjuPkk0/ma1/7Gr/97W+54YYbaGpqYvPmzcyZM4fzzz+fNWvWsP/++/PAAw/wD//wD/zkJz9h5syZ/NM//RPnn38+733ve/mbv/kbfvrTn/K0pz2NV73qVbX8MUmawH7961/zrW99i1WrVnHsscdy0UUXcc011/C9732P//2//zdf+9rXuPrqq2lqauInP/kJH/zgB/n2t78NwM9//nNuuukm5syZw7Zt2zj22GN53vOexzvf+U5+8IMfMGnSJJ773Ody7bXXEhF85Stf4ZOf/OTuvL399ttZs2YNXV1dLFiwgLe+9a0ObSft5WxgF+Caa65h2bJlTJ48mblz5/KCF7yAX/ziF/zsZz/jDW94w+5uE3PmzNm9z5vf/Gb++q//mnPPPRfou+N700037e5f/dBDD3HXXXdx9dVX7z72QQcdxJIlS3Yf40c/+hEveclLdr9/6UtfyvTp05k+fTqLFy/m+uuvZ9999+W4447bPYzSNddcwzve8Q4Anv70p/PkJz+ZO++883HXdMUVV/C9732P8847D+gbBeCee+7hJz/5CW95y1t2f0za/5p2ufbaa/nVr37FiSeeCMCOHTt4znOew+23386hhx7KYYcdBsBZZ53FqlWrqvkjl6QxOfTQQznyyCMBOPzww3nhC19IRHDkkUdy991389BDD3H22Wdz1113ERE8+uiju/d90YtetDvrZsyYwZe//GWe//zn85nPfIanPvWpQN9QhK961au4//772bFjx2OGrjvttNNobm6mubmZAw44gI0bN3LwwQfX8Ool1dpe00WknjJzyOVDPWV9wgknsGbNmt1DHGUmn//851m3bh3r1q3jt7/9LUuXLgWGflL7iiuu2L3NYNvtej9z5swRax2s9m9/+9u767nnnnt4xjOeMew19d/3RS960e59f/WrX/HVr3512GuRpDI1Nzfvfj1p0qTd7ydNmkRPTw8f/vCHWbx4Mbfccgvf//73HzP8XP8Mhb5PAPfbbz/uu+++3cve8Y538Pa3v52bb76ZL33pS4/Zv/+5J0+eTE/BXWQk7XlsYBfg+c9/Ppdccgk7d+7kD3/4A1dffTXHHXccS5cupaOjY/foGv27iLzxjW/k1FNP5ZWvfCU9PT28+MUv5l/+5V923zW588472bp1K89//vP5xje+wc6dO7n//vtZs2YN0HeHu6enh/3222/3Mb/73e+yfft2/vjHP3LVVVdx7LHHDlrr6tWrd5/jnnvuYcGCBbS0tNDV1bV7uxe/+MV8/vOf390gv+GGGwBYunQpX/ziF3f/B7Hrmvrvf/zxx/Nf//Vf/PrXvwZg27Zt3HnnnTz96U/nt7/9Lf/93/8N9I2AIkl7goceeognPelJQF+/66H87ne/49Of/jQ33HADP/zhD7nuuuset/+FF15Yer2S9mw2sAvwspe9jKOOOoqFCxeyZMkSPvnJTzJv3jxOOeUUzjjjDFpbWzn66KN3d7fY5f/7//4/nvWsZ/Ha176WN73pTTzzmc/kWc96FkcccQRvfvOb6enp4WUvexmHHXYYRx55JG9961t5wQteAMCVV17JySef/JjjHXfccZx22mkcf/zxfPjDH+aggw56XK3/63/9L3bu3MmRRx7Jq171Ki644AKam5tZvHgxv/rVr3Y/5PjhD3+YRx99lKOOOoojjjiCD3/4wwC86U1v4s/+7M92X+9FF10EwPLly3nJS17C4sWLeeITn8gFF1zAsmXLOOqoozj++OO5/fbbmTZtGqtWreK0007juc99Lk9+8pPL+HFI0pi9973v5QMf+AAnnngiO3fuHHSbzOSNb3wj5513HgcddBBf/epXedOb3sT27dtpb2/nla98Jc973vPYf//9a1y9pD1NjLbLQD21trbmwHGjb7vtNp7xjGfsfj/Rhul705vexJve9CaOP/54oO9J9VmzZvGe97ynzpUVY+DPV9qbRMTazGytdx1lGE1eN+owfXo8s1p7s/Fk9V7zkOOe3Bguw1e+8pV6lyBJVbExLGlvt9c0sCe69vb2epcgSZIk7IMtSZIkFaqhG9iN0H9cY+fPVZIkNbKGbWBPmzaNP/7xjzbG9jKZyR//+EemTZtW71IkSZKq0rB9sA8++GDuvfde/vCHP9S7FBVs2rRpznImSZIaVsM2sKdMmfKYqWglSRrKrFmz2LJly5j3O+mkkzjvvPNobR37SF2vf/3rOf300/mrv/oroG9yrd/85jece+65Yz5Wf+vWreO+++7j1FNPrWr/lStXsnz5cmbMmDHqfa666irOO+88Lr/88qrOKU00DdvAliQ1pok2b8EuP/rRj3jnO985qm137tzJ5MmTB123bt06Ojs7x9XAPuuss8bUwJY0Ng3bB1uS1JiKbFyP9XiZyYoVKzjiiCM48sgjueSSS3av++QnP8mRRx7JwoULef/73/+Y/Xp7ezn77LP50Ic+xM6dO1mxYgXHHnssRx11FF/60pd2H/vtb387z3zmMznttNPYtGnTY867bt06nvWsZ9He3s5rX/talixZwmGHHcaXv/xloO8u8eLFi3n1q1/NkUceyfbt23nDG97AkUceyTHHHMOaNWvYsWMHH/nIR7jkkkt2z7y7detW2traOPbYYznmmGP47ne/C/Q10t/znvdw5JFHctRRR/H5z3+ez33uc9x3330sXryYxYsXA3DFFVfwnOc8h2c961m88pWv3H2n/0c/+hFPf/rTee5zn8ull15axU9Gmri8gy1JmjAuvfRS1q1bx4033sgDDzzAsccey/Of/3zWrVvHd77zHa677jpmzJjB5s2bd+/T09PDa17zGo444gjOPfdcVq1axT777MMvfvELuru7OfHEE1m6dCk33HADd9xxBzfffDMbN27kmc98Jm1tbQDccMMNLFy4kIgA4KabbuLaa69l69atHHPMMZx22mkAXH/99dxyyy0ceuihfPrTnwbg5ptv5vbbb2fp0qXceeed/N3f/R2dnZ184QtfAOCDH/wgS5YsoaOjgwcffJDjjjuOk08+ma997Wv89re/5YYbbqCpqYnNmzczZ84czj//fNasWcP+++/PAw88wD/8wz/wk5/8hJkzZ/JP//RPnH/++bz3ve/lb/7mb/jpT3/K0572NF71qlfV8sckNTwb2JKkCeOaa65h2bJl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\n",
      "text/plain": [
       "<Figure size 720x720 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, anx = plt.subplots(nrows=1, ncols=2,figsize=(10,10), constrained_layout=True)\n",
    "plotGap(df, 'Pre-Marxan', anx[0], post_marxan=False)\n",
    "plotGap(df, 'Post-Marxan', anx[1], post_marxan=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 5) Unmet targets pipeline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "unmet_dict = unmetDecisionTree(MARXAN_FOLDER, 'input.dat',\n",
    "                      lock_out_limit=50, \n",
    "                      high_cost_quantile= 0.7, \n",
    "                      hcost_limit=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{1: 'Close to target (1% away of misslevel)',\n",
       " 2: 'Close to target (1% away of misslevel)',\n",
       " 5: 'Close to target (1% away of misslevel)',\n",
       " 6: 'Close to target (1% away of misslevel)',\n",
       " 7: 'Close to target (1% away of misslevel)',\n",
       " 9: 'Close to target (1% away of misslevel)'}"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "unmet_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[1m --> Running FPF_1...\u001b[0m\n",
      "Marxan v 4.0.5\n",
      "\n",
      "Spatial Prioritization via Annealing\n",
      "\n",
      "Coded by Ian Ball, modified by Matthew Watts\n",
      "Written by Ian Ball and Hugh Possingham\n",
      "\n",
      "Marxan website\n",
      "\n",
      "https://marxansolutions.org/\n",
      "\n",
      "Running multithreaded over number of threads: 4\n",
      "\n",
      "Best run: 1 Best score: 3.89587e+07\n",
      "\u001b[1m --> Running FPF_2...\u001b[0m\n",
      "Marxan v 4.0.5\n",
      "\n",
      "Spatial Prioritization via Annealing\n",
      "\n",
      "Coded by Ian Ball, modified by Matthew Watts\n",
      "Written by Ian Ball and Hugh Possingham\n",
      "\n",
      "Marxan website\n",
      "\n",
      "https://marxansolutions.org/\n",
      "\n",
      "Running multithreaded over number of threads: 4\n",
      "\n",
      "Best run: 2 Best score: 4.01685e+07\n",
      "\u001b[1m --> Running FPF_5...\u001b[0m\n",
      "Marxan v 4.0.5\n",
      "\n",
      "Spatial Prioritization via Annealing\n",
      "\n",
      "Coded by Ian Ball, modified by Matthew Watts\n",
      "\u001b[1m --> Running FPF_10...\u001b[0m\n",
      "Marxan v 4.0.5\n",
      "\n",
      "Spatial Prioritization via Annealing\n",
      "\n",
      "Coded by Ian Ball, modified by Matthew Watts\n",
      "Written by Ian Ball and Hugh Possingham\n",
      "\n",
      "Marxan website\n",
      "\n",
      "https://marxansolutions.org/\n",
      "\u001b[1m --> Running FPF_20...\u001b[0m\n",
      "Marxan v 4.0.5\n",
      "\n",
      "Spatial Prioritization via Annealing\n",
      "\n",
      "Coded by Ian Ball, modified by Matthew Watts\n",
      "Written by Ian Ball and Hugh Possingham\n",
      "\n",
      "Marxan website\n",
      "\n",
      "https://marxansolutions.org/\n",
      "\n",
      "Running multithreaded over number of threads: 4\n",
      "\n",
      "Best run: 4 Best score: 4.16345e+07\n",
      "\u001b[1m --> Running FPF_50...\u001b[0m\n",
      "Marxan v 4.0.5\n",
      "\n",
      "Spatial Prioritization via Annealing\n",
      "\n",
      "Coded by Ian Ball, modified by Matthew Watts\n",
      "Written by Ian Ball and Hugh Possingham\n",
      "\n",
      "\u001b[1m --> Running FPF_100...\u001b[0m\n",
      "Marxan v 4.0.5\n",
      "\n",
      "Spatial Prioritization via Annealing\n",
      "\n",
      "Coded by Ian Ball, modified by Matthew Watts\n",
      "Written by Ian Ball and Hugh Possingham\n",
      "\n",
      "Marxan website\n",
      "\n",
      "https://marxansolutions.org/\n",
      "\n",
      "Running multithreaded over number of threads: 4\n",
      "\n",
      "Best run: 5 Best score: 4.26239e+07\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "best_multiplier = FPF_calibration(f'{MARXAN_FOLDER}',MARXAN_INPUTDATA, unmet_dict)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "50"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "best_multiplier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
